除了大專院校會把 C 語言當成教學工具外,C 語言和他的大兄弟 C++ 可說是資訊界最重要的兩個語言。許多重要的軟體專案是以 C 寫成,包括其他高階語言的編譯器或直譯器。 繼續閱讀
平常練習 C 語言時,我們可能只用單一或少數 C 原始碼檔案,只用簡單的指令或 IDE 按鈕來編譯 C 原始碼。但我們若想用 C 寫應用程式或函式庫,應該要以專案的形式管理 C 原始碼。本文介紹建立 C 專案的方式。 繼續閱讀
比起 Unix 或類 Unix 系統,Windows 對於 C 語言的原生支援較薄弱,缺乏單一最佳方案。目前來說,有以下四種方案: 繼續閱讀
對於有一定規模的 C 專案,不會把所有的程式碼寫在同一個檔案中,而會將程式碼以模組化的方式細分在不同檔案中,並用自動編譯軟體來管理編譯、測試、安裝等工作流程。本文介紹在 C 語言中常見的自動編譯系統。 繼續閱讀
在本文中,我們藉由以 CMake 為基礎的 Hello World 程式專案來展示 CMake 的使用方法。由於 C 程式的部分相當簡單,本文的重點會放在 CMake 的使用方式以及設定檔撰寫上面。 繼續閱讀
macOS 本質上是一種 BSD 系統,在 C 語言的支援上自然比 Windows 好得多。但蘋果公司不甚注重傳統 Unix 程式設計的發展,等於是只有半套功能的 繼續閱讀
CMake 除了可以用來建立應用程式專案,也可用來建立函式庫專案。藉由 CMake 跨平台的特性,讓函式庫更容易分享出去。 繼續閱讀
GNU/Linux 承襲 Unix 的文化,對於 C 語言支援相當良好。除了剛開始要花一些時間學習如何使用系統外,GNU/Linux 繼續閱讀
當我們要寫應用程式時,很少會只用標準函式庫的功能。這時候,我們需要第三方函式庫來補足標準函式庫不足之處。對於小型任務,還勉勉強強可以自製輪子,但對於 GUI 函式庫或其他大型函式庫,就超出單一開發者的能力了。所以還是要會處理 C 專案的相依性。 繼續閱讀
本文會選 GCC 而非其他 C 編譯器是因為 GCC 在 GNU/Linux 等類 Unix 系統上具有代表性。如果讀者使用 Clang,因 Clang 繼續閱讀